package com.hd.sup.modules.vehicle.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.hd.sup.core.annotation.DataScope;
import com.hd.sup.modules.vehicle.model.VehicleEndPos;
import lombok.Data;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 车辆末次信息表 | 看看pg有没有内存表 Mapper 接口
 * </p>
 *
 * @author chentl123
 * @since 2020-12-28
 */
public interface VehicleEndPosMapper extends BaseMapper<VehicleEndPos> {


    /**
     * @return java.util.List<java.util.Map < java.lang.String, java.lang.Object>>
     * @author chentl
     * @description 查询末次信息分页列表
     * @date 2021/2/2 1:20 下午
     * @params [page, vehicleEndPos]
     */
    @DataScope
    List<Map<String, Object>> getVehicleEndPosPage(@Param("page") Page<Map<String, Object>> page, @Param("vehicleEndPos") VehicleEndPos vehicleEndPos);

    /**
     * @return java.util.List<java.util.Map < java.lang.String, java.lang.Object>>
     * @author chentl
     * @description 查询视窗内 所有车辆坐标信息 后续本接口删除
     * @date 2021/1/8 10:40 上午
     * @params [param]
     */
    List<Map<String, Object>> getVehicleGps(@Param("param") VehicleEndPos param);

    /**
     * @return void
     * @author chentl
     * @description 定时刷新末次信息表
     * @date 2021/1/8 12:37 下午
     * @params [veDto]
     */
    void refreshVehicleEndPos(@Param("veDto") VehicleEndPos veDto);

    /**
     * @return java.util.List<com.hd.sup.modules.vehicle.model.VehicleEndPos>
     * @author chentl
     * @description 获取所有未同步静态数据的车辆
     * @date 2021/1/13 5:16 下午
     * @params []
     */
    List<VehicleEndPos> getUnCompletionVehicle();
}
